#!/usr/bin/env python
"""
校园圈子分类初始化脚本
用于初始化校园圈子模块所需的分类
"""

import os
django_settings_module = os.environ.get('DJANGO_SETTINGS_MODULE')
if not django_settings_module:
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'after.settings')
    django_settings_module = os.environ.get('DJANGO_SETTINGS_MODULE')

import django
django.setup()

from circle.models import Category

# 预定义的分类列表
CATEGORIES = [
    {
        'name': '二手市场',
        'description': '学生之间的物品交易平台，包括书籍、电子设备、衣物等',
        'icon': 'shopping-bag',
        'order': 1,
        'is_active': True
    },
    {
        'name': '恋爱交友',
        'description': '校园内的交友和恋爱平台',
        'icon': 'heart',
        'order': 2,
        'is_active': True
    },
    {
        'name': '打听求助',
        'description': '学生之间互相帮助、咨询和解答问题的平台',
        'icon': 'question-circle',
        'order': 3,
        'is_active': True
    },
    {
        'name': '发布兼职',
        'description': '发布和寻找校园内外兼职工作的平台',
        'icon': 'briefcase',
        'order': 4,
        'is_active': True
    },
    {
        'name': '校园八卦',
        'description': '分享校园内的新鲜事和热点话题',
        'icon': 'comment-dots',
        'order': 5,
        'is_active': True
    },
    {
        'name': '其他',
        'description': '不属于以上分类的内容',
        'icon': 'ellipsis-h',
        'order': 6,
        'is_active': True
    }
]

def initialize_categories():
    """初始化分类数据"""
    created_count = 0
    updated_count = 0
    
    for category_data in CATEGORIES:
        category, created = Category.objects.update_or_create(
            name=category_data['name'],
            defaults={
                'description': category_data['description'],
                'icon': category_data['icon'],
                'order': category_data['order'],
                'is_active': category_data['is_active']
            }
        )
        
        if created:
            created_count += 1
            print(f'创建分类: {category.name}')
        else:
            updated_count += 1
            print(f'更新分类: {category.name}')
    
    print(f'分类初始化完成！创建了 {created_count} 个分类，更新了 {updated_count} 个分类。')

if __name__ == '__main__':
    initialize_categories()